home *** CD-ROM | disk | FTP | other *** search
/ Creative Review 28 / Creative-Review-CD-ROM-28.iso / pc / kungfu / assets / game.dir / 00043_Script_baddy class < prev    next >
Text File  |  1997-08-08  |  4KB  |  176 lines

  1. -- baddy class method
  2. -- --------------------------------------------------
  3.  
  4. property ancestor
  5.  
  6. global gcell
  7. global gplayer
  8.  
  9. -- ==================================================
  10. -- new method
  11. -- --------------------------------------------------
  12. on new me, props
  13.   
  14.   minit me, props
  15.   return me
  16.   
  17. end mnew 
  18.  
  19. -- ==================================================
  20. -- minit method
  21. -- --------------------------------------------------
  22. on minit me, props
  23.   
  24.   -- put "in minit baddy"
  25.   
  26.   set type = #baddy
  27.   
  28.   set ancestor = new ( script "enemy class" , props )
  29.   
  30.   msetcurrentmove me, ( mkeytomove ( me, #idle ) )
  31.   
  32.   set theloc = getaprop ( props, #loc )
  33.   msetloc ( me, theloc)
  34.   
  35.   -- put "out minit baddy"
  36.   
  37.   
  38. end minit
  39.  
  40. -- ==================================================
  41. -- mdispose me
  42. -- --------------------------------------------------
  43. on mdispose me
  44.   
  45.   --  put "in mdispose baddy class"
  46.   
  47.   mdispose ancestor
  48.   
  49.   set ancestor = 0
  50.   
  51.   --  put "in mdispose baddy class"
  52.   
  53. end mdispose me
  54.  
  55.  
  56. -- ==================================================
  57. -- mstart method
  58. -- --------------------------------------------------
  59. on mstart me
  60.   
  61.   --  put "in mstart baddy"
  62.   
  63.   mbatchadd ( gcell, the cell of me, me)
  64.   
  65.   --  put "out mstart baddy"
  66.   
  67. end mstart 
  68.  
  69. -- ==================================================
  70. -- manimfinish method
  71. -- --------------------------------------------------
  72. on manimfinish me
  73.   
  74.   --  put "in manimfinish baddy " 
  75.   
  76.   mmovefinish me
  77.   
  78.   if (the nextmoveflag  of me) then 
  79.     
  80.     set newmove = (the nextmove of me)
  81.     set the nextmoveflag of me = false
  82.     
  83.   else   set newmove = mthink ( me )
  84.   
  85.   set newmove = mcheckwalk ( me , newmove)
  86.   
  87.   mmove gsound, the data of me, mmovetokey ( me, newmove )
  88.   
  89.   msetcurrentmove me, newmove
  90.   
  91.   -- put "out manimfinish baddy " 
  92.   
  93. end manimfinish
  94.  
  95. -- ==================================================
  96. -- mthink method
  97. -- --------------------------------------------------
  98. on mthink me
  99.   
  100.   -- put "in mnewmove baddy " 
  101.   
  102.   set newmove = mthink ( ancestor )
  103.   
  104.   if  ( newmove = 0 ) then
  105.     
  106.     if ( abs ( the huntvector of me ) = 4 ) then set newmove = ( mattack ( me ) )
  107.     else set newmove = mkeytomove ( me , the direction of me )
  108.     
  109.   end if
  110.   
  111.   -- put "out mnewmove baddy " 
  112.   
  113.   return newmove
  114.   
  115. end mthink 
  116.  
  117. -- ==================================================
  118. -- mhurt method
  119. -- --------------------------------------------------
  120. on mhurt me , attackmove, starloc
  121.   
  122.   --  put "in mhurt baddy"
  123.   
  124.   return mcheckhurt ( me , attackmove, starloc )
  125.   
  126.   --  put "out mhurt baddy"
  127.   
  128. end mhurt
  129.  
  130. -- ==================================================
  131. -- mhit method
  132. -- --------------------------------------------------
  133. on mhit me, theloc
  134.   
  135.   --   put "in mhit baddy" , theloc
  136.   
  137.   if  ilk ( theloc, #point ) then
  138.     mhit ( ancestor, theloc )    
  139.   else mdie me
  140.   
  141.   --  put "out mhit baddy"
  142.   
  143. end mhit 
  144.  
  145. -- ==================================================
  146. -- mdie method
  147. -- --------------------------------------------------
  148. on mdie me
  149.   
  150.   --  put "in mdie baddy"
  151.   
  152.   mbatchdelete gcell, the cell of me , me
  153.   mbaddydead gplayer
  154.   set the hideflag of  me = true
  155.   mreturnthedead gbaddy, me
  156.   set the callback of me = false
  157.   
  158.   -- mdispose me
  159.   
  160.   --  put "out mdie baddy"
  161.   
  162. end mdie
  163.  
  164. -- ==================================================
  165. -- mstartdie method
  166. -- --------------------------------------------------
  167. on mstartdie me
  168.   
  169. --  put "in mstartdie baddy"
  170.   
  171.   mbatchdelete gcell, the cell of me , me
  172.   
  173. --  put "out mstartdie baddy"
  174.   
  175. end mstartdie
  176.